package main

import (
	"fmt"
)

// Go中小数类型的使用
func main() {
	var price float32 = 32.50
	fmt.Println("price= ", price)

	var num1 float32 = -0.00089
	var num2 float64 = -7809825464.69
	fmt.Println("num1= ", num1, "num2= ", num2)

	// 尾数部分可能丢失，造成精度损失
	var num3 float32 = -123.0000052560
	var num4 float64 = -123.0231235665
	fmt.Println("num3= ", num3, "num4= ", num4) // num3=  -123.00001 num4=  -123.0231235665

	// Golang的浮点型默认声明为float64类型
	var num5 = 1.1
	fmt.Printf("num5 的数字类型是 %T \n ", num5)

	// 十进制数形式：如：5.12（必须有小数点）
	num6 := 5.12
	num7 := .123 // => 0.123
	fmt.Println("num6=", num6, "num7=", num7)

	// 科学计数法形式
	num8 := 5.1234e2   // 5.1234 * 10的2次方
	num9 := 5.1234e2   // 5.1234 * 10的2次方
	num10 := 5.1234e-2 // 5.1234 / 10的2次方
	fmt.Println("num8=", num8, "\n num9=", num9, "\n num10=", num10)
}
